package com.ruoyi.generator.mapper;

import java.util.List;
import com.ruoyi.generator.domain.GenTemplate;
import com.ruoyi.generator.domain.GenTemplateFile;

/**
 * 代码模版Mapper接口
 * 
 * @author aibozeng
 * @date 2023-04-15
 */
public interface GenTemplateMapper 
{
    /**
     * 查询代码模版
     * 
     * @param templateId 代码模版主键
     * @return 代码模版
     */
    public GenTemplate selectGenTemplateByTemplateId(Long templateId);

    /**
     * 查询代码模版列表
     * 
     * @param genTemplate 代码模版
     * @return 代码模版集合
     */
    public List<GenTemplate> selectGenTemplateList(GenTemplate genTemplate);

    /**
     * 新增代码模版
     * 
     * @param genTemplate 代码模版
     * @return 结果
     */
    public int insertGenTemplate(GenTemplate genTemplate);

    /**
     * 修改代码模版
     * 
     * @param genTemplate 代码模版
     * @return 结果
     */
    public int updateGenTemplate(GenTemplate genTemplate);

    /**
     * 删除代码模版
     * 
     * @param templateId 代码模版主键
     * @return 结果
     */
    public int deleteGenTemplateByTemplateId(Long templateId);

    /**
     * 批量删除代码模版
     * 
     * @param templateIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGenTemplateByTemplateIds(String[] templateIds);

    /**
     * 批量删除代码模版文件
     * 
     * @param templateIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGenTemplateFileByTemplateIds(String[] templateIds);
    
    /**
     * 批量新增代码模版文件
     * 
     * @param genTemplateFileList 代码模版文件列表
     * @return 结果
     */
    public int batchGenTemplateFile(List<GenTemplateFile> genTemplateFileList);
    

    /**
     * 通过代码模版主键删除代码模版文件信息
     * 
     * @param templateId 代码模版ID
     * @return 结果
     */
    public int deleteGenTemplateFileByTemplateId(Long templateId);
}
